Thực đơn
Advanced_Encryption_Standard Mô tả mức cao của thuật toánLà quá trình tạo các vòng khóa từ khóa chính, mỗi khóa con chứa 4 byte.
Bao gồm các bước:
Tại chu trình cuối thì bước MixColumns không thực hiện.
Các byte được thế thông qua bảng tra S-box. Đây chính là quá trình phi tuyến của thuật toán. Hộp S-box này được tạo ra từ một phép biến đổi khả nghịch trong trường hữu hạn GF (28) có tính chất phi tuyến. Để chống lại các tấn công dựa trên các đặc tính đại số, hộp S-box này được tạo nên bằng cách kết hợp phép nghịch đảo với một phép biến đổi affine khả nghịch. Hộp S-box này cũng được chọn để tránh các điểm bất động (fixed point).
Xem thêm: Rijndael S-box.
Các hàng được dịch vòng một số bước nhất định. Đối với AES, hàng đầu được giữ nguyên. Mỗi byte của hàng thứ 2 được dịch vòng trái một vị trí. Tương tự, các hàng thứ 3 và 4 được dịch vòng 2 và 3 vị trí. Do vậy, mỗi cột khối đầu ra của bước này sẽ bao gồm các byte ở đủ 4 cột khối đầu vào. Đối với Rijndael với độ dài khối khác nhau thì số vị trí dịch chuyển cũng khác nhau.
Bốn byte trong từng cột được kết hợp lại theo một phép biến đổi tuyến tính khả nghịch. Mỗi khối 4 byte đầu vào sẽ cho một khối 4 byte ở đầu ra với tính chất là mỗi byte ở đầu vào đều ảnh hưởng tới cả bốn byte đầu ra. Cùng với bước ShiftRows, MixColumns đã tạo ra tính chất khuếch tán cho thuật toán. Mỗi cột được xem như một đa thức trong trường hữu hạn và được nhân với đa thức c ( x ) = 3 x 3 + x 2 + x + 2 {\displaystyle c(x)=3x^{3}+x^{2}+x+2} (modulo x 4 + 1 {\displaystyle x^{4}+1} ). Vì thế, bước này có thể được xem là phép nhân ma trận trong trường hữu hạn.
Tại bước này, khóa con được kết hợp với các khối. Khóa con trong mỗi chu trình được tạo ra từ khóa chính với quá trình tạo khóa con Rijndael; mỗi khóa con có độ dài giống như các khối. Quá trình kết hợp được thực hiện bằng cách XOR từng bít của khóa con với khối dữ liệu.
Xem thêm: Rijndael mix columns.
Đối với các hệ thống 32 bít hoặc lớn hơn, ta có thể tăng tốc độ thực hiện thuật toán bằng cách sáp nhập các bước SubBytes, ShiftRows, MixColumns và chuyển chúng thành dạng bảng. Có cả thảy bốn bảng với 256 mục, mỗi mục là 1 từ 32 bít, bốn bảng này chiếm 4096 byte trong bộ nhớ. Khi đó, mỗi chu trình sẽ được bao gồm 16 lần tra bảng và 12 lần thực hiện phép XOR 32 bít cùng với 4 phép XOR trong bước AddRoundKey.
Trong trường hợp kích thước các bảng vẫn lớn so với thiết bị thực hiện thì chỉ dùng một bảng và tra bảng kết hợp với hoán vị vòng quanh.
Thực đơn
Advanced_Encryption_Standard Mô tả mức cao của thuật toánLiên quan
Advanced Encryption Standard Advanced Packaging Tool Advance Australia Fair Advanced Aerospace Threat Identification Program Advanced Tactical Fighter Advances in Physics Advanced Info Service Advanced persistent threat Advanced Technology Large-Aperture Space Telescope Advanced programming interfaceTài liệu tham khảo
WikiPedia: Advanced_Encryption_Standard http://www.iaik.tu-graz.ac.at/research/krypto/AES/ http://www.iaik.tu-graz.ac.at/research/krypto/AES/... http://www.esat.kuleuven.ac.be/~rijmen/rijndael/ http://www.esat.kuleuven.ac.be/~rijmen/rijndael/ri... http://groups.google.com/groups?selm=42620794@news... http://www.macfergus.com/pub/rdalgeq.html http://fp.gladman.plus.com/cryptography_technology... http://www.quadibloc.com/crypto/co040401.htm http://www.schneier.com/paper-rijndael.html http://www.cs.eku.edu/faculty/styer/460/Encrypt/JS...